﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ServiceModel;
using System.Runtime.Serialization;

namespace BBECServiceBusAdapter.RevenueDataContractExtensions
{
    #region Supporting Collection Classes

    [DataContract(Namespace = Helper.Namespace)]
    public sealed class RevenueSplit
    {
        [DataMember(IsRequired = true)]
        public string Designation = "";
        [DataMember(IsRequired = true)]
        public decimal Amount = 0;
    }

    #endregion

    #region Enumerations

    [DataContract(Namespace = Helper.Namespace)]
    public enum RevenuePaymentMethod
    {
        [EnumMember]
        Cash = 0,
        [EnumMember]
        Check = 1,
        [EnumMember]
        CreditCard = 2,
        [EnumMember]
        DirectDebit = 3,
        [EnumMember]
        Stock = 4,
        [EnumMember]
        Property = 5,
        [EnumMember]
        GiftInKind = 6,
        [EnumMember]
        None = 9,
        [EnumMember]
        Other = 10,
        [EnumMember]
        StandingOrder = 11
    }

    [DataContract(Namespace = Helper.Namespace)]
    public enum RevenueTransactionType
    {
        [EnumMember]
        Payment = 0,
        [EnumMember]
        Pledge = 1,
        [EnumMember]
        RecurringGift = 2,
        [EnumMember]
        MatchingGiftClaim = 3,
        [EnumMember]
        PlannedGift = 4,
        [EnumMember]
        Order = 5,
        [EnumMember]
        GrantAward = 6,
        [EnumMember]
        AuctionDonation = 7,
        [EnumMember]
        DonorChallengeClaim = 8,
        [EnumMember]
        PendingGift = 9
    }

    #endregion
}